#ifndef FRAMES_H_
#define FRAMES_H_
#include <windows.h>

class CFrames
{
	int m_nAnchorX;
	int m_nAnchorY;

	RECT m_rFrameRect;
	int m_nFrameX;
	int m_nFrameY;
	bool m_bHasFrameRect;

	RECT m_rCollisionRect;
	int m_nCollisionX;
	int m_nCollisionY;
	bool m_bHasCollisionRect;

	RECT m_rWeaponRect;
	int m_nWeaponX;
	int m_nWeaponY;
	bool m_bHasWeaponRect;

	float m_fFrameDuration;
public:
	CFrames(void);
	~CFrames(void);

	////////////////////////////////////////////
	// Get anchor points info
	///////////////////////////////////////////
	int GetAnchorX() { return m_nAnchorX; }
	void SetAnchorX(int x) { m_nAnchorX = x; }

	int GetAnchorY() { return m_nAnchorY; }
	void SetAnchorY(int y) { m_nAnchorY = y; }

	////////////////////////////////////////////
	// Get frame rect info
	///////////////////////////////////////////
	RECT GetFrameRect() { return m_rFrameRect; }
	void SetFrameRect(RECT frame);

	int GetFrameX() { return m_nFrameX; }
	void SetFrameX(int x) { m_nFrameX = x; }
	int GetFrameY() { return m_nFrameY; }
	void SetFrameY(int y) { m_nFrameY = y; }

	bool GetHasFrameRect() { return m_bHasFrameRect; }
	void SetHasFrameRect(bool frame) { m_bHasFrameRect = frame; }

	////////////////////////////////////////////
	// Get collision rect info
	///////////////////////////////////////////
	RECT GetCollisionRect() { return m_rCollisionRect; }
	void SetCollisionRect(RECT collision);

	int GetCollisionX() { return m_nCollisionX; }
	void SetCollisionX(int x) { m_nCollisionX = x; }
	int GetCollisionY() { return m_nCollisionY; }
	void SetCollisionY(int y) { m_nCollisionY = y; }

	bool GetHasCollisionRect() { return m_bHasCollisionRect; }
	void SetHasCollisionRect(bool collision) { m_bHasCollisionRect = collision; }

	////////////////////////////////////////////
	// Get weapon rect info
	///////////////////////////////////////////
	RECT GetWeaponRect() { return m_rWeaponRect; }
	void SetWeaponRect(RECT weapon);

	int GetWeaponX() { return m_nWeaponX; }
	void SetWeaponX(int x) { m_nWeaponX = x; }
	int GetWeaponY() { return m_nWeaponY; }
	void SetWeaponY(int y) { m_nWeaponY = y; }

	bool GetHasWeaponRect() { return m_bHasWeaponRect; }
	void SetHasWeaponRect(bool weapon) { m_bHasWeaponRect = weapon; }

	////////////////////////////////////////////
	// Get frame duration
	///////////////////////////////////////////
	float GetFrameDuration() { return m_fFrameDuration; }
	void SetFrameDuration(float duration) { m_fFrameDuration = duration; }
};

#endif